diff -urN linux-2.4.16-sh-cvs/drivers/cdrom/gdrom.c linux/drivers/cdrom/gdrom.c --- linux-2.4.16-sh-cvs/drivers/cdrom/gdrom.c Mon Dec 3 17:42:52 2001 +++ linux/drivers/cdrom/gdrom.c Mon Dec 3 17:42:46 2001 @@ -40,6 +40,15 @@ #include #include +static struct block_device_operations gdrom_bdops = +{ + owner: THIS_MODULE, + open: cdrom_open, + release: cdrom_release, + ioctl: cdrom_ioctl, + check_media_change: cdrom_media_changed, +}; + static int gdrom_blocksize = 2048; static int gdrom_hardsecsize = 2048; @@ -462,7 +471,7 @@ return -EBUSY; } - if (devfs_register_blkdev(MAJOR_NR, DEVICE_STR, &cdrom_fops) != 0) { + if (devfs_register_blkdev(MAJOR_NR, DEVICE_STR, &gdrom_bdops) != 0) { printk(KERN_ERR "GDROM: Unable to get major %d for GD-ROM\n", MAJOR_NR); free_irq(GDROM_IRQ, NULL); return -EIO; diff -urN linux-2.4.16-sh-cvs/include/asm-sh/segment.h linux/include/asm-sh/segment.h --- linux-2.4.16-sh-cvs/include/asm-sh/segment.h Wed Dec 31 19:00:00 1969 +++ linux/include/asm-sh/segment.h Mon Dec 3 17:56:49 2001 @@ -0,0 +1,6 @@ +#ifndef _ASM_SH_SEGMENT_H +#define _ASM_SH_SEGMENT_H + +/* Only here because we have some old header files that expect it.. */ + +#endif /* _ASM_SH_SEGMENT_H */