mirror of https://gitee.com/openkylin/linux.git
de4x5: Remove developer debug feature about set/clear promisc
IFF_PROMISC flag shouldn't be set or cleared by drivers, because whether device be promisc mode is decided by how many upper layer callers being referenced to it. And the promisc changing feature of de4x5 ioctl is developer debug feature, we can remove it now. Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com> Acked-by: Grant Grundler <grundler@parisc-linux.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
parent
2b4ff112a0
commit
b57f9cae87
|
@ -5514,22 +5514,6 @@ de4x5_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
|
|||
netif_wake_queue(dev); /* Unlock the TX ring */
|
||||
break;
|
||||
|
||||
case DE4X5_SET_PROM: /* Set Promiscuous Mode */
|
||||
if (!capable(CAP_NET_ADMIN)) return -EPERM;
|
||||
omr = inl(DE4X5_OMR);
|
||||
omr |= OMR_PR;
|
||||
outl(omr, DE4X5_OMR);
|
||||
dev->flags |= IFF_PROMISC;
|
||||
break;
|
||||
|
||||
case DE4X5_CLR_PROM: /* Clear Promiscuous Mode */
|
||||
if (!capable(CAP_NET_ADMIN)) return -EPERM;
|
||||
omr = inl(DE4X5_OMR);
|
||||
omr &= ~OMR_PR;
|
||||
outl(omr, DE4X5_OMR);
|
||||
dev->flags &= ~IFF_PROMISC;
|
||||
break;
|
||||
|
||||
case DE4X5_SAY_BOO: /* Say "Boo!" to the kernel log file */
|
||||
if (!capable(CAP_NET_ADMIN)) return -EPERM;
|
||||
printk("%s: Boo!\n", dev->name);
|
||||
|
|
|
@ -1004,8 +1004,7 @@ struct de4x5_ioctl {
|
|||
*/
|
||||
#define DE4X5_GET_HWADDR 0x01 /* Get the hardware address */
|
||||
#define DE4X5_SET_HWADDR 0x02 /* Set the hardware address */
|
||||
#define DE4X5_SET_PROM 0x03 /* Set Promiscuous Mode */
|
||||
#define DE4X5_CLR_PROM 0x04 /* Clear Promiscuous Mode */
|
||||
/* 0x03 and 0x04 were used before and are obsoleted now. Don't use them. */
|
||||
#define DE4X5_SAY_BOO 0x05 /* Say "Boo!" to the kernel log file */
|
||||
#define DE4X5_GET_MCA 0x06 /* Get a multicast address */
|
||||
#define DE4X5_SET_MCA 0x07 /* Set a multicast address */
|
||||
|
|
Loading…
Reference in New Issue