Hi Geert, Le mardi 30 septembre 2014 à 14:28 +0200, Geert Uytterhoeven a écrit : > Hi Thibaut, > > On Tue, Sep 30, 2014 at 2:16 PM, Thibaut Robert > <thibaut.robert@xxxxxxxxx> wrote: > > Fix gcc warning: > > warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘resource_size_t’ [-Wformat=] > > > > As resource_size_t can be 32 or 64 bits (depending on CONFIG_RESOURCES_64BIT), this patch uses "%lld" format along with a cast to u64 for printing resource_size_t values > > Please use %pR instead (cfr. Documentation/printk-formats.txt). This code use 'resource_size_t' but I think %pR is for 'struct resource'. I got inspired by this patch: https://lkml.org/lkml/2008/8/29/187 However, I've thought again, and '%u' is probably enough for displaying a size in MiB. So I propose the following : (Parens around the cast were also missing in my first patch): @@ -117,10 +114,10 @@ static void __init tc_bus_add_devices(struct tc_bus *tbus) tdev->resource.start = extslotaddr; tdev->resource.end = extslotaddr + devsize - 1; } else { - printk(KERN_ERR "%s: Cannot provide slot space " - "(%dMiB required, up to %dMiB supported)\n", - dev_name(&tdev->dev), devsize >> 20, - max(slotsize, extslotsize) >> 20); + dev_err(&tdev->dev, + "Cannot provide slot space (%uMiB required, up to %uMiB supported)\n", + (unsigned int) (devsize >> 20), + (unsigned int) (max(slotsize, extslotsize) >> 20)); kfree(tdev); goto out_err; } WDYT ? Thibaut