Compiling virtualbox with Linux 2.6.38
The Virtualbox developers have segregated themselves into a walled garden of their own choice (only subscribers may post to vbox-dev; you have to sign up to join their forums, etc, etc.). So in the hopes of reaching anybody who cares, here is a patch to Virtualbox to handle the recent VFS change of replacing ->get_sb with ->mount.
This isn't enough to get virtualbox to compile with a recent kernel. The DRM change that replaced pci_driver with kdriver seems harder to ifdef a solution to. Maybe somebody else out there has already done this work and is similarly waiting for somebody else to do the VFS portion :-)
VBox/Additions/linux/sharedfolders/vfsmod.c +12 -1
@@ -453,20 +453,31 @@TRACE ();return get_sb_nodev (fs_type, flags, data, sf_read_super_26); } -#else +#elsif LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 37)static int sf_get_sb (struct file_system_type *fs_type,int flags,const char *dev_name,void *data,struct vfsmount *mnt) {TRACE ();return get_sb_nodev (fs_type, flags, data, sf_read_super_26, mnt); } +#else +static struct dentry *sf_mount (struct file_system_type *fs_type,int flags, +const char *dev_name,void *data) +{ +TRACE (); +return mount_nodev (fs_type, flags, data, sf_read_super_26); +}#endif static struct file_system_type vboxsf_fs_type = { .owner =THIS_MODULE , .name ="vboxsf" , +#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 37) .get_sb = sf_get_sb, +#else + .mount = sf_mount, +#endif .kill_sb = kill_anon_super };#endif