From 457e7b264fa784bbf54ecc115a89e80d3f2a1e29 Mon Sep 17 00:00:00 2001 From: Shaun Ruffell Date: Wed, 21 Mar 2012 19:12:06 +0000 Subject: dahdi: Update dev_set_name / dev_name for RHEL 5.6+. This is needed because dev_name() is mapped to kobject_name() in a backport, but the kobject name isn't set until after device_add(). The result would be parentless devices would fail since dahdi would not think a name was set for these devices. For these systems, we'll set both the bus_id string and the underlying kobject_name. Signed-off-by: Shaun Ruffell Acked-by: Tzafrir Cohen Origin: http://svnview.digium.com/svn/dahdi?view=rev&rev=10561 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/branches/2.6@10569 a0bf4364-ded3-4de4-8d8a-66a801d63aff --- include/dahdi/kernel.h | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/include/dahdi/kernel.h b/include/dahdi/kernel.h index e425420..9607fd2 100644 --- a/include/dahdi/kernel.h +++ b/include/dahdi/kernel.h @@ -99,16 +99,25 @@ #endif #endif -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26) +#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 26) # ifdef RHEL_RELEASE_VERSION # if RHEL_RELEASE_CODE < RHEL_RELEASE_VERSION(5, 6) #define dev_name(dev) ((dev)->bus_id) +#define dev_set_name(dev, format, ...) \ + snprintf((dev)->bus_id, BUS_ID_SIZE, format, ## __VA_ARGS__) +# else +#define dev_set_name(dev, format, ...) \ + do { \ + kobject_set_name(&(dev)->kobj, format, ## __VA_ARGS__); \ + snprintf((dev)->bus_id, BUS_ID_SIZE, \ + kobject_name(&(dev)->kobj)); \ + } while (0) # endif # else #define dev_name(dev) ((dev)->bus_id) -# endif #define dev_set_name(dev, format, ...) \ - snprintf((dev)->bus_id, BUS_ID_SIZE, format, ## __VA_ARGS__); + snprintf((dev)->bus_id, BUS_ID_SIZE, format, ## __VA_ARGS__) +# endif #endif /*! Default chunk size for conferences and such -- static right now, might make -- cgit v1.2.3