![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5yN3QDO5ITN2MTM0kTM0EzLcBTM0EDMy8CXyAjMzIzLcd2bsJ2Lc12bj5ycn9Gbi52YuAzcldWYtl2Lc9CX6MHc0RHaiojIsJye.png)
可以看到,veth裝置qdisc隊列,而環回裝置/橋接裝置是沒qdisc隊列的,參考br_dev_setup函數。
在注冊(建立)裝置時,qdisc設定為noop_qdisc, register_netdevice -> dev_init_scheduler
打開裝置時,如果沒有配置qdisc時,就指定為預設的pfifo_fast隊列: dev_open -> dev_activate,
開始嘗試直接删除裝置預設的pfifo_fast隊列,發現會出錯:
後來看到Jesper Brouer給出一個替換預設隊列的方式,嘗試了一下,成功完成。
替換預設的qdisc隊列
修改隊列長度
删除qdisc
可以看到,UP的veth裝置成功修改成noqueue。
本文轉自feisky部落格園部落格,原文連結:http://www.cnblogs.com/feisky/p/4105884.html,如需轉載請自行聯系原作者