diff -ru rr222x-linux-src-1.02_original/inc/ldm.h rr222x-linux-src-1.02_ynezz/inc/ldm.h --- rr222x-linux-src-1.02_original/inc/ldm.h 2005-08-31 05:20:02.000000000 +0200 +++ rr222x-linux-src-1.02_ynezz/inc/ldm.h 2006-03-23 14:19:19.000000000 +0100 @@ -41,7 +41,7 @@ HPT_UINT size; void * head; struct freelist *next; -#if DBG +#if defined(DBG) char *tag; HPT_UINT reserved_count; #define freelist_debug_tag(list, _tag) (list)->tag = _tag diff -ru rr222x-linux-src-1.02_original/inc/linux/osm.h rr222x-linux-src-1.02_ynezz/inc/linux/osm.h --- rr222x-linux-src-1.02_original/inc/linux/osm.h 2005-08-31 05:20:02.000000000 +0200 +++ rr222x-linux-src-1.02_ynezz/inc/linux/osm.h 2006-03-23 14:18:46.000000000 +0100 @@ -150,7 +150,7 @@ /* debug support */ int os_printk(char *fmt, ...); -#if DBG +#if defined(DBG) extern int hpt_dbg_level; #define KdPrint(x) do { if (hpt_dbg_level) os_printk x; } while (0) void __os_dbgbreak(const char *file, int line); diff -ru rr222x-linux-src-1.02_original/osm/linux/os_linux.c rr222x-linux-src-1.02_ynezz/osm/linux/os_linux.c --- rr222x-linux-src-1.02_original/osm/linux/os_linux.c 2005-08-31 05:20:02.000000000 +0200 +++ rr222x-linux-src-1.02_ynezz/osm/linux/os_linux.c 2006-03-23 14:25:00.000000000 +0100 @@ -115,7 +115,7 @@ list->dma = 0; list->size = size; list->head = 0; -#if DBG +#if defined(DBG) list->reserved_count = #endif list->count = count; @@ -155,7 +155,7 @@ list->alignment = alignment; list->size = size; list->head = 0; -#if DBG +#if defined(DBG) list->reserved_count = #endif list->count = count; @@ -284,9 +284,21 @@ if (vbus_ext->sd_flags[id] & SD_FLAG_REVALIDATE) { if (bdev->bd_disk->fops->revalidate_disk) bdev->bd_disk->fops->revalidate_disk(bdev->bd_disk); - down(&bdev->bd_inode->i_sem); + + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16) + down(&bdev->bd_inode->i_sem); + #else + mutex_unlock(&bdev->bd_inode->i_mutex); + #endif + i_size_write(bdev->bd_inode, (loff_t)get_capacity(bdev->bd_disk)<<9); - up(&bdev->bd_inode->i_sem); + + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16) + up(&bdev->bd_inode->i_sem); + #else + mutex_lock(&bdev->bd_inode->i_mutex); + #endif + vbus_ext->sd_flags[id] &= ~SD_FLAG_REVALIDATE; } if (bdev->bd_openers>1) @@ -462,7 +474,7 @@ return printk("%s:%d: %s\n", driver_name, smp_processor_id(), buf); } -#if DBG +#if defined(DBG) void __os_dbgbreak(const char *file, int line) { printk("*** break at %s:%d ***", file, line); diff -ru rr222x-linux-src-1.02_original/osm/linux/osm_linux.c rr222x-linux-src-1.02_ynezz/osm/linux/osm_linux.c --- rr222x-linux-src-1.02_original/osm/linux/osm_linux.c 2005-08-31 05:20:02.000000000 +0200 +++ rr222x-linux-src-1.02_ynezz/osm/linux/osm_linux.c 2006-03-23 14:18:19.000000000 +0100 @@ -160,7 +160,7 @@ BUS_ADDRESS bus; for (f=vbus_ext->freelist_head; f; f=f->next) { -#if DBG +#if defined(DBG) if (f->count!=f->reserved_count) { KdPrint(("memory leak for freelist %s (%d/%d)", f->tag, f->count, f->reserved_count)); } @@ -177,7 +177,7 @@ for (f=vbus_ext->freelist_dma_head; f; f=f->next) { int order, size; -#if DBG +#if defined(DBG) if (f->count!=f->reserved_count) { KdPrint(("memory leak for dma freelist %s (%d/%d)", f->tag, f->count, f->reserved_count)); }