.. | .. |
---|
511 | 511 | ** receive ** |
---|
512 | 512 | **************/ |
---|
513 | 513 | |
---|
514 | | -static void usbatm_rx_process(unsigned long data) |
---|
| 514 | +static void usbatm_rx_process(struct tasklet_struct *t) |
---|
515 | 515 | { |
---|
516 | | - struct usbatm_data *instance = (struct usbatm_data *)data; |
---|
| 516 | + struct usbatm_data *instance = from_tasklet(instance, t, |
---|
| 517 | + rx_channel.tasklet); |
---|
517 | 518 | struct urb *urb; |
---|
518 | 519 | |
---|
519 | 520 | while ((urb = usbatm_pop_urb(&instance->rx_channel))) { |
---|
.. | .. |
---|
564 | 565 | ** send ** |
---|
565 | 566 | ***********/ |
---|
566 | 567 | |
---|
567 | | -static void usbatm_tx_process(unsigned long data) |
---|
| 568 | +static void usbatm_tx_process(struct tasklet_struct *t) |
---|
568 | 569 | { |
---|
569 | | - struct usbatm_data *instance = (struct usbatm_data *)data; |
---|
| 570 | + struct usbatm_data *instance = from_tasklet(instance, t, |
---|
| 571 | + tx_channel.tasklet); |
---|
570 | 572 | struct sk_buff *skb = instance->current_skb; |
---|
571 | 573 | struct urb *urb = NULL; |
---|
572 | 574 | const unsigned int buf_size = instance->tx_channel.buf_size; |
---|
.. | .. |
---|
1069 | 1071 | |
---|
1070 | 1072 | usbatm_init_channel(&instance->rx_channel); |
---|
1071 | 1073 | usbatm_init_channel(&instance->tx_channel); |
---|
1072 | | - tasklet_init(&instance->rx_channel.tasklet, usbatm_rx_process, (unsigned long)instance); |
---|
1073 | | - tasklet_init(&instance->tx_channel.tasklet, usbatm_tx_process, (unsigned long)instance); |
---|
| 1074 | + tasklet_setup(&instance->rx_channel.tasklet, usbatm_rx_process); |
---|
| 1075 | + tasklet_setup(&instance->tx_channel.tasklet, usbatm_tx_process); |
---|
1074 | 1076 | instance->rx_channel.stride = ATM_CELL_SIZE + driver->rx_padding; |
---|
1075 | 1077 | instance->tx_channel.stride = ATM_CELL_SIZE + driver->tx_padding; |
---|
1076 | 1078 | instance->rx_channel.usbatm = instance->tx_channel.usbatm = instance; |
---|
.. | .. |
---|
1275 | 1277 | |
---|
1276 | 1278 | static int __init usbatm_usb_init(void) |
---|
1277 | 1279 | { |
---|
1278 | | - if (sizeof(struct usbatm_control) > FIELD_SIZEOF(struct sk_buff, cb)) { |
---|
| 1280 | + if (sizeof(struct usbatm_control) > sizeof_field(struct sk_buff, cb)) { |
---|
1279 | 1281 | printk(KERN_ERR "%s unusable with this kernel!\n", usbatm_driver_name); |
---|
1280 | 1282 | return -EIO; |
---|
1281 | 1283 | } |
---|