* [Drbd-dev] Compatibility with 2.6.30 and current git
@ 2009-06-19 14:39 Ante Karamatić
2009-06-19 16:01 ` Lars Ellenberg
0 siblings, 1 reply; 3+ messages in thread
From: Ante Karamatić @ 2009-06-19 14:39 UTC (permalink / raw)
To: drbd-dev
Hi
I've mentioned this during Ubuntu 8.10 time frame, but nothing much has
changed since then.
Looking at linux/drbd.h, there's this part:
#ifndef CN_IDX_DRBD
# define CN_IDX_DRBD 0x4
/* Ubuntu "intrepid ibex" release defined CN_IDX_DRBD as 0x6 */
#endif
Ubuntu defined CN_IDX_DRBD as 0x6 cause 0x4 was taken by vesa
framebuffer device. Linux kernels 2.6.30 and latest git has both 0x4 and
0x6 taken by other modules (include/linux/connector.h):
#define CN_IDX_V86D 0x4
#define CN_DST_IDX 0x6
These IDs should be unique (hence the name 'Process Events connector
unique ids'). If you want 2.6.30 compatibility (at least), change it to
0x7. That one is free. But keep an eye on it for 2.6.31. So, something
like this:
#ifndef CN_IDX_DRBD
# define CN_IDX_DRBD 0x7
#endif
In current state, if vesa frame buffer module is loaded, drbd won't
work. Module will load, but userspace tools won't be able to connect to
it - they'll be connecting to frame buffer :)
Take care...
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Drbd-dev] Compatibility with 2.6.30 and current git
2009-06-19 14:39 [Drbd-dev] Compatibility with 2.6.30 and current git Ante Karamatić
@ 2009-06-19 16:01 ` Lars Ellenberg
2009-06-19 16:04 ` Ante Karamatić
0 siblings, 1 reply; 3+ messages in thread
From: Lars Ellenberg @ 2009-06-19 16:01 UTC (permalink / raw)
To: drbd-dev
On Fri, Jun 19, 2009 at 04:39:11PM +0200, Ante Karamatić wrote:
> Hi
>
> I've mentioned this during Ubuntu 8.10 time frame, but nothing much has
> changed since then.
>
> Looking at linux/drbd.h, there's this part:
>
> #ifndef CN_IDX_DRBD
> # define CN_IDX_DRBD 0x4
> /* Ubuntu "intrepid ibex" release defined CN_IDX_DRBD as 0x6 */
> #endif
>
> Ubuntu defined CN_IDX_DRBD as 0x6 cause 0x4 was taken by vesa
> framebuffer device. Linux kernels 2.6.30 and latest git has both 0x4 and
> 0x6 taken by other modules (include/linux/connector.h):
>
> #define CN_IDX_V86D 0x4
>
> #define CN_DST_IDX 0x6
>
> These IDs should be unique (hence the name 'Process Events connector
> unique ids'). If you want 2.6.30 compatibility (at least), change it to
> 0x7. That one is free. But keep an eye on it for 2.6.31. So, something
> like this:
NOnono.
the userland needs to be backwards compatible,
and must be able to find the connector index used by the kernel module.
there is now a module parameter cn_idx,
which shows up in /sys/modules/drbd/parameters/cn_idx,
so the userland finds it.
you can set it to whatever you want.
if not set, it defaults to what old drbd userland expected.
and when drbd tries to register that connector index,
and it fails, it will simply add 6977, and try again.
it tries 10 times.
> In current state, if vesa frame buffer module is loaded, drbd won't
> work. Module will load, but userspace tools won't be able to connect
> to it - they'll be connecting to frame buffer :)
get your facts straight.
--
: Lars Ellenberg
: LINBIT | Your Way to High Availability
: DRBD/HA support and consulting http://www.linbit.com
DRBD® and LINBIT® are registered trademarks of LINBIT, Austria.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-06-19 16:08 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-19 14:39 [Drbd-dev] Compatibility with 2.6.30 and current git Ante Karamatić
2009-06-19 16:01 ` Lars Ellenberg
2009-06-19 16:04 ` Ante Karamatić
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.