Pekka Paalanen
2011-Jan-03 18:04 UTC
[Nouveau] [PATCH] drm: Remove DRIVER_DATE and CORE_DATE
On Wed, 22 Dec 2010 10:51:26 +0100 Sedat Dilek <sedat.dilek at googlemail.com> wrote:> DRIVER_DATE is not maintained or upgraded on changes in many drm > drivers. > > For example radeon has one DRIVER_DATE for User and Kernel > ModeSetting driver, this makes no sense as UMS and KMS driver > have different versions. And of course this all increases > maintenance, too. For radeon it is enough to bump > {KMS_}DRIVER_MAJOR, {KMS_}DRIVER_MINOR and > {KMS_}DRIVER_PATCHLEVEL defines. > > Furthermore, I also removed CORE_DATE. > > With radeon-KMS my dmesg looks now like this: > > [ 12.328937] [drm] Initialized drm 1.1.0 > [ 13.144019] [drm] Initialized radeon 2.8.0 for 0000:01:00.0 on > minor 0 > > Signed-off-by: Sedat Dilek <sedat.dilek at gmail.com> > > Note: Tested with radeon RV250 (KMS) and linux-next > (next-20101221)....> diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.c b/drivers/gpu/drm/nouveau/nouveau_drv.c > index bb17057..50abca3 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_drv.c > +++ b/drivers/gpu/drm/nouveau/nouveau_drv.c > @@ -416,11 +416,6 @@ static struct drm_driver driver = { > > .name = DRIVER_NAME, > .desc = DRIVER_DESC, > -#ifdef GIT_REVISION > - .date = GIT_REVISION, > -#else > - .date = DRIVER_DATE, > -#endif > .major = DRIVER_MAJOR, > .minor = DRIVER_MINOR, > .patchlevel = DRIVER_PATCHLEVEL,Just a reminder, why this hunk was there in the first place: it is quite usual for the Nouveau DRM to be compiled out-of-tree, from different kernel git sources than the hosting kernel. This was an attempt to record in the kernel log which exact revision is being used. GIT_REVISION is defined by the Makefile that is recommended to be used for out-of-tree building. I didn't check if this patch has been accepted, but I believe maintaining differences between nouveau/linux-2.6 and upstream kernel trees is a burden. Is there a better way to add revision information to an out-of-tree built kernel module? Or maybe this is not useful at all? Cheers. -- Pekka Paalanen http://www.iki.fi/pq/
2011/1/3 Pekka Paalanen <pq at iki.fi>:> On Wed, 22 Dec 2010 10:51:26 +0100 > Sedat Dilek <sedat.dilek at googlemail.com> wrote: > >> DRIVER_DATE is not maintained or upgraded on changes in many drm >> drivers. >> >> For example radeon has one DRIVER_DATE for User and Kernel >> ModeSetting driver, this makes no sense as UMS and KMS driver >> have different versions. And of course this all increases >> maintenance, too. For radeon it is enough to bump >> {KMS_}DRIVER_MAJOR, {KMS_}DRIVER_MINOR and >> {KMS_}DRIVER_PATCHLEVEL defines. >> >> Furthermore, I also removed CORE_DATE. >> >> With radeon-KMS my dmesg looks now like this: >> >> [ ? 12.328937] [drm] Initialized drm 1.1.0 >> [ ? 13.144019] [drm] Initialized radeon 2.8.0 for 0000:01:00.0 on >> minor 0 >> >> Signed-off-by: Sedat Dilek <sedat.dilek at gmail.com> >> >> Note: Tested with radeon RV250 (KMS) and linux-next >> (next-20101221). > ... >> diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.c b/drivers/gpu/drm/nouveau/nouveau_drv.c >> index bb17057..50abca3 100644 >> --- a/drivers/gpu/drm/nouveau/nouveau_drv.c >> +++ b/drivers/gpu/drm/nouveau/nouveau_drv.c >> @@ -416,11 +416,6 @@ static struct drm_driver driver = { >> >> ? ? ? .name = DRIVER_NAME, >> ? ? ? .desc = DRIVER_DESC, >> -#ifdef GIT_REVISION >> - ? ? .date = GIT_REVISION, >> -#else >> - ? ? .date = DRIVER_DATE, >> -#endif >> ? ? ? .major = DRIVER_MAJOR, >> ? ? ? .minor = DRIVER_MINOR, >> ? ? ? .patchlevel = DRIVER_PATCHLEVEL, > > Just a reminder, why this hunk was there in the first place: > it is quite usual for the Nouveau DRM to be compiled out-of-tree, > from different kernel git sources than the hosting kernel. > This was an attempt to record in the kernel log which exact > revision is being used. GIT_REVISION is defined by the Makefile > that is recommended to be used for out-of-tree building. > > I didn't check if this patch has been accepted, but I believe > maintaining differences between nouveau/linux-2.6 and upstream > kernel trees is a burden. > > Is there a better way to add revision information to an > out-of-tree built kernel module? > Or maybe this is not useful at all? > > > Cheers. > > -- > Pekka Paalanen > http://www.iki.fi/pq/ >Happy new 2011 to you all (and I apologize for my rants in the next few lines)! [ NOTE: The mentionned patch is not complete, requires further removals also in libdrm and a rebuild of the ddx. ] I have a new patchset (as series and as a single patch) to remove driver-date and core-date from kernel-drm and one patch to do so for libdrm (see attachments). This stuff is tested and running (while I am writing to you) with linux-next (next-20101231), a cleaned-up libdrm-2.4.23 and a rebuilt ati/radeon ddx. But works-for-me means not these patches work fine with other kernels, libdrm or ddx than in my development environment. So, please feel free to test them and give feedback (best is dri-devel mailing-list). ( If desired I can resend the patchset/patch(es) to dri-devel ML - in a discussion thread such patches go down. ) [ Instructions ] 1. Rebuild kernel with my kernel-drm patchset 2. Jump to the new kernel 3. Rebuild libdrm with my libdrm-patch (be aware you have the correct/cleanedp-up drm.h) 4. Rebuild your ddx (in my case xf86-video-ati) against new libdrm Note: Another reason for me to get rid of the driver-date stuff: It is not checked for example in the ddx (but for major|minor|patchlevel versions). BTW, my mesa and xserver are from official Debian/experimental. Unfortunately, diverse emails of me have been unanswered to update the driver-date for radeon (for a collection of mine see [1],[2],[3]). I cannot speak for nouveau in kernel-drm, but the GIT version stuff was not clear to me.