for (stream->buf_num = 0; stream->buf_num < num; stream->buf_num++) {
                deb_mem("allocating buffer %d\n",stream->buf_num);
                if (( stream->buf_list[stream->buf_num] =
-                                       usb_alloc_coherent(stream->udev, size, GFP_ATOMIC,
+                                       usb_alloc_coherent(stream->udev, size, GFP_KERNEL,
                                        &stream->dma_addr[stream->buf_num]) ) == NULL) {
                        deb_mem("not enough memory for urb-buffer allocation.\n");
                        usb_free_stream_buffers(stream);
 
        /* allocate the URBs */
        for (i = 0; i < stream->props.count; i++) {
-               stream->urb_list[i] = usb_alloc_urb(0, GFP_ATOMIC);
+               stream->urb_list[i] = usb_alloc_urb(0, GFP_KERNEL);
                if (!stream->urb_list[i]) {
                        deb_mem("not enough memory for urb_alloc_urb!.\n");
                        for (j = 0; j < i; j++)
                struct urb *urb;
                int frame_offset = 0;
 
-               stream->urb_list[i] = usb_alloc_urb(stream->props.u.isoc.framesperurb, GFP_ATOMIC);
+               stream->urb_list[i] = usb_alloc_urb(stream->props.u.isoc.framesperurb, GFP_KERNEL);
                if (!stream->urb_list[i]) {
                        deb_mem("not enough memory for urb_alloc_urb!\n");
                        for (j = 0; j < i; j++)