summaryrefslogtreecommitdiffstats
path: root/support/scripts
Commit message (Collapse)AuthorAgeFilesLines
* Remove BR2_HAVE_DEVFILESThomas Petazzoni2013-07-041-20/+0
| | | | | | | | | | | | This finally removes the BR2_HAVE_DEVFILES option, that was used to install/keep development files on target. With the recent migration of the internal backend to the package infrastructure, we had anyway lost the ability to build gcc for the target, and install the uClibc development files on the target. [Peter: also remove support/scripts/copy.sh] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* apply-patches.sh: ensure a fixed (and simple) sorting order is usedPeter Korsgaard2013-06-121-0/+3
| | | | | | So we always apply patches in the samme order. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Merge branch 'next'Peter Korsgaard2013-06-021-0/+1
|\
| * skeleton: add default login port to /etc/securettyTzu-Jung Lee2013-05-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We ran into a "Login incorrect" problem when running the same rootfs image across platforms with different loging ports ttyS0/1/2/3. Simply assignning "console" to BR2_TARGET_GENERIC_GETTY_PORT, which in turn modifies the /etc/inittab, is not enough because the "console" device was missing in the /etc/securetty. While current securetty has enumerated a lot of ttys, this patch should save some efforts to enumerate more. [Peter: guard with single quotes] Signed-off-by: Tzu-Jung Lee <tjlee@ambarella.com> Signed-off-by: Spenser Gilliland <spenser@gillilanding.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* | graph-depends: ignore the 'target-purgelocales' targetDanomi Manchego2013-05-161-0/+1
| | | | | | | | | | | | | | | | Otherwise, graph-depends tries to call 'make target-purgelocales-show-depends', which does not exist, as 'target-purgelocales' is not an actual package. Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* | graph-depends: fix program path in commentLuca Ceresoli2013-05-151-1/+1
| | | | | | | | | | | | Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* | graph-depends: ignore the 'target-generic-dont-remount-rw' targetLuca Ceresoli2013-05-151-0/+1
|/ | | | | | | | | | | The graph-depends script tries to call 'make target-generic-dont-remount-rw', which doesn't exist since 'target-generic-dont-remount-rw' is not a package. See also the comments for commit 72bd61e5b8c2094378. Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* support/scripts: add gen-manual-lists.pySamuel Martin2013-05-041-0/+379
| | | | | | | | | | | Script generating the target and host package tables, and the deprecated stuff list as well. These tables and lists are generated parsing the Config.in files. Signed-off-by: Samuel Martin <s.martin49@gmail.com> [yann.morin.1998@free.fr: no leading dot, no menu path for host-utils] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* support: add kconfiglib python moduleSamuel Martin2013-05-042-0/+3802
| | | | | | | Signed-off-by: Samuel Martin <s.martin49@gmail.com> [yann.morin.1998@free.fr: rename readme so it is obvious it's about kconfiglib] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* packages: add ability for packages to create usersYann E. MORIN2013-04-251-0/+409
| | | | | | | | | | | | | | | | Packages that install daemons may need those daemons to run as a non-root, or an otherwise non-system (eg. 'daemon'), user. Add infrastructure for packages to create users, by declaring the FOO_USERS variable that contain a makedev-syntax-like description of the user(s) to add. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Samuel Martin <s.martin49@gmail.com> Cc: Cam Hutchison <camh@xdna.net> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* apply-patches.sh: applying xz-ed patchesJerzy Grzegorek2013-03-261-2/+4
| | | | | | | Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net> [yann.morin.1998@free.fr: space-damage] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* graph-depends: ignore the 'target-post-image' targetThomas Petazzoni2013-03-061-0/+1
| | | | | | | | | | | | Since the introduction of the post-image mechanism, the graph-depends script is broken: it tries to call 'make target-post-image-show-depends', which doesn't exist since 'target-post-image' is not a package. So we should simply ignore this 'target-post-image'. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* package/customize: removeThomas Petazzoni2013-02-081-1/+0
| | | | | | | | | | | | This mechanism of root filesystem customization has been deprecated since a long time, so let's remove it now. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: Luca Ceresoli <luca@lucaceresoli.net> Acked-by: "Samuel Martin" <s.martin49@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* eclipse support: document script and add checksThomas Petazzoni2013-01-141-0/+48
| | | | | | | | | | As requested by Peter, add a bit of documentation in the eclipse-register-toolchain script, and add a few more checks (even though this script is not intended to be executed manually, which is also now mentionned in the documentation). Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Integration with Buildroot Toolchain Eclipse pluginThomas Petazzoni2013-01-141-0/+28
| | | | | | | | | | | | | | | | | | The Eclipse plugin at https://github.com/mbats/eclipse-buildroot-toolchain-plugin allows users of Eclipse to easily use the toolchain available in Buildroot. To do so, this plugin reads ~/.buildroot-eclipse.toolchains, which contains the list of Buildroot toolchains available on the system, and then offer those toolchains to compile Eclipse projects. In order to interface with this plugin, this commit adds an option that allows the user to tell whether (s)he wants the Buildroot project toolchain to be visible under this Eclipse plugin. It simply adds a line in this ~/.buildroot-eclipse.toolchains file. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* xorg-release: ignore some X.org packagesThomas Petazzoni2013-01-051-0/+11
| | | | | | | | | | | | | | | | Following Gustavo's removal of two X.org drivers for old hardware unlikely to be used in embedded contexts, the xorg-release script now reports those two X.org packages as "to be added": they exist in X.org, but not in Buildroot. So, we add a small list, XORG_EXCEPTIONS, in our xorg-release script, to list the X.org packages we don't want to hear about. Of course, packages that exist in X.org, and that are not part of this exception list, and are not packaged in Buildroot are still listed as "to be added". Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* support/scripts: add xorg-release.py scriptThomas Petazzoni2013-01-051-0/+165
| | | | | | | | | | | This script generates a report on the packaging status of X.org releases in Buildroot. It does so by downloading the list of tarballs that are part of a given X.org release, and compare that with the packages that are available in Buildroot. [Peter: drop .py suffix, make executable] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* graph-depends: add to exclusion listYann E. MORIN2013-01-021-0/+1
| | | | | | | | | | | | | | | | Add the root-password internal target to the exclusion list. Fixes failures like: Getting dependencies for [... 'target-root-passwd' ...] Error getting dependencies [... 'target-root-passwd' ...] Which is easily singled out with: $ make target-root-passwd-show-depends make[1]: *** No rule to make target `target-root-passwd-show-depends'. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* graph-depends: remove support for "unknown" packagesThomas Petazzoni2013-01-021-12/+1
| | | | | | | | | | | | The "unknown" packages mechanism was used to render packages that did not implement the make <pkg>-show-depends target, i.e the packages that were not yet converted to one of the package infrastructures. Since now all packages have been converted, we can remove this "unknown" packages feature. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* graph-depends: update copyrightThomas Petazzoni2013-01-021-1/+1
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* graph-depends: fix commentThomas Petazzoni2013-01-021-5/+0
| | | | | | | | Since 9bc7b1d4ae694b818f941410d1ff59316a2bba6e, all X.org .mk files are parsed unconditionally, even if BR2_PACKAGE_XORG7 is disabled. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* graph-depends: optimize execution speedThomas Petazzoni2013-01-021-45/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | Until now, graph-depends was calling "make <pkg>-show-depends" individually for eack package, which was very slow. Now, it calls "make <pkg1>-show-depends <pkg2>-show-depends ... <pkgN>-show-depends" for all packages it knows, and then does that recursively. It reduces the number of make invocations to the deepest dependency chain in the current configuration, instead of having a number of make invocations equal to the number of enabled packages. For a configuration with xvkbd enabled (which brings a significant number of X.org dependencies) and a tar root filesystem, the time to execute graph-depends was: real 5m14.944s user 4m53.590s sys 0m14.069s After our optimizations, it is now: real 0m33.096s user 0m30.878s sys 0m1.472s Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* graph-depends: use a separate TARGET_EXCEPTIONS variableThomas Petazzoni2013-01-021-6/+10
| | | | | | | | | In preparation for more graph-depends improvements, use a TARGET_EXCEPTIONS list to list all the targets that should be ignored while building the dependency graph. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* graph-depends: remove redundant dependenciesThomas Petazzoni2013-01-021-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | When doing a full graph of the dependencies, graph-depends starts by doing a "make show-targets", which lists all the packages registered in the $(TARGETS) variable. This variable contains all packages that are enabled according to the .config file. Then, for each of those packages, we used to create a "all" -> "package" dependency, even if in fact most of some packages are already dependencies of other packages. This creates a needlessly complex dependency graph. This patch modifies graph-depends so that it filters out the unneeded "all" -> "package" dependencies when "package" is already the dependency of another package. For example, if you have a configuration with libpng (which selects zlib), "make show-targets" displays "libpng zlib", so graph-depends used to create the following dependencies: (all -> libpng, all -> zlib, libpng -> zlib). However, the (all -> zlib) dependency is not really needed, as zlib is already the dependency of libpng. Those dependencies are now filtered out. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-stats: fix the broken "results" linkLuca Ceresoli2012-11-051-0/+1
| | | | | | | | At the top of the output html page there is a dangling "results" link. Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* support/graph-depends: fix out-of-tree usageYann E. MORIN2012-08-141-2/+2
| | | | | | | | | | | | | | | | | graph-depends calls make to get the list of packages, and the dependencies of each package. When called out-of-tree, the Makefile is a wrapper that calls the real Makefile, so make will spit out a line like: make -C /path/to/buildroot O=/path/to/build-dir show-targets which graph-depends wrongly believes is part of the target list. Be silent when calling make, as we really only want the target and dependency lists. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-stats: statistics about license files informationThomas Petazzoni2012-08-051-0/+25
| | | | | | | | | Since on some packages we are adding <pkg>_LICENSE but not necessarily <pkg>_LICENSE_FILES, let's add a separate statistic to track these informations. This will allow us to improve both the number of packages covered by <pkg>_LICENSE and <pkg>_LICENSE_FILES. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-stats: support <pkg>_LICENSE = lines with spacesThomas Petazzoni2012-08-051-1/+1
| | | | | | | For alignement reasons, we sometimes add spaces between <pkg>_LICENSE and the equal sign. Take this into account in pkg-stats. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-stats: ensure infratype is reset for every packageThomas Petazzoni2012-07-311-0/+1
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-stats: add license information, rework information displayedThomas Petazzoni2012-07-311-148/+113
| | | | | | | | | | | | Now that most packages have been converted over to package infrastructures, keep only one column to show the package infrastructures. A new column, showing of the package has license information, has been added. This will help in increasing the number of packages having license metadata. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Rename XXXTARGETS to xxx-packageArnout Vandecappelle (Essensium/Mind)2012-07-171-6/+6
| | | | | | | | With the introduction of a specific macro for host targets, it was decided to also make the names of the macros more intuitive: generic-package, autotools-package and cmake-package. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* pkg-infra: add host-xxx-package macroArnout Vandecappelle (Essensium/Mind)2012-07-171-6/+6
| | | | | | | | | | | | | | | Create host-generic-package, host-autotools-package and host-cmake-package macros. Such a macro is more intuitive to use than the $(call ...,host) construct. Also it speeds things up by having one less $(call ...) evaluation. Also includes documentation update, but not for buildroot.html. This brings the time for 'make -qp' (which is used by bash-completion) down from 1.85s to 1.35s on my laptop. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* graph-depends: ignore a few more uninteresting targetsThomas Petazzoni2012-07-171-0/+2
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* apply-patches.sh: add documentationLudovic Desroches2012-05-191-0/+23
| | | | | Signed-off-by: Ludovic Desroches <ludovic.desroches@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* apply-patches.sh: patch pattern was expanded prematurelyLudovic Desroches2012-04-161-1/+1
| | | | | | | | The patch pattern was expanded before being into the patch directory so the expansion can add incorrect files. Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* apply-patches.sh: add recursivity when scanning patchdirLudovic Desroches2012-03-211-3/+9
| | | | | | | | | | | | | | | | | | | Recursivity is needed with some tarballs containing debian patches: . debian changelog control patches 02-COPYRIGHT.patch [...] Since we can find some files which are not patches in those directories, only consider .patch* and .diff* files as valid patches. Due to recursivity, strip-components option is no more necessary so it has been removed. Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* apply-patches.sh: use series file to apply patches in proper orderLudovic Desroches2012-03-211-12/+20
| | | | | | | | | | | | | If a series file is present use it to determine the proper order to apply patches instead of using ls sorting order. Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com> Tested-by: Ludovic Desroches <ludovic.desroches@atmel.com> add a series file with a wrong patch order into an archive containing several patches whose correct order is the alphabetical one Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* apply-patches.sh: change archive managementLudovic Desroches2012-03-211-16/+32
| | | | | | | | | | | | | The way archives were managed was incorrect because the uncompressed archives were sent directly to the patch command. It means that alphabetical patch order was not respected. Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com> Tested-by: Ludovic Desroches <ludovic.desroches@atmel.com> with an armadeus_apf9328_defconfig build Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* apply-patches.sh: directories are no more considered as overlaysLudovic Desroches2012-03-201-4/+1
| | | | | | | | | | | When a directory is found in patchdir, it is skipped. Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com> Tested-by: Ludovic Desroches <ludovic.desroches@atmel.com> with an armadeus_apf9328_defconfig build Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* apply-patches.sh: cleanupLudovic Desroches2012-03-201-2/+2
| | | | | | | | | | | | Add quoting and remove redundant command. Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com> Tested-by: Ludovic Desroches <ludovic.desroches@atmel.com> with an armadeus_apf9328_defconfig build Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* apply-patches.sh: rename targetdir to builddirLudovic Desroches2012-03-201-9/+9
| | | | | | | | | | | | targetdir is not the output/target directory as it can suggest. Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com> Tested-by: Ludovic Desroches <ludovic.desroches@atmel.com> with an armadeus_apf9328_defconfig build Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* apply-patches.sh: remove any rejects before applying patchesLudovic Desroches2012-03-141-1/+7
| | | | | | | | | | | [Peter: .rej files might be in subdirs, so just do find .. | xargs rm] Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com> Tested-by: Ludovic Desroches <ludovic.desroches@atmel.com> with an armadeus_apf9328_defconfig build Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-stats: update list of packages to be skippedLuca Ceresoli2012-02-261-1/+1
| | | | | | Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* setlocalversion: fix i18n issue with svnFrederik Pasch2012-01-161-2/+2
| | | | | | | Closes #4700 Signed-off-by: Frederik Pasch <fpasch@googlemail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-stats: fix table layoutLuca Ceresoli2012-01-111-1/+1
| | | | | | | | The "Patch count" cell needs rowspan=2, otherwise the host/target cells are misaligned. Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Prevent patch commands from accessing source controlDanomi Mocelopolis2011-11-261-1/+1
| | | | | | | | Closes #4357 Add -g0 option to patch to ensure it doesn't try to access source control. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-stats: update script location in usage instructionsSven Neumann2011-10-061-1/+1
| | | | | Signed-off-by: Sven Neumann <s.neumann@raumfeld.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-stats: update list of .mk to ignoreH Hartley Sweeten2011-10-061-0/+1
| | | | | Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-stats: use correct variable names for convert_to_*autotoolsH Hartley Sweeten2011-10-051-1/+2
| | | | | | | | The variable convert_to_autotools is not used in the script. The correct variables are convert_to_target_autotools and convert_to_host_autotools. Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-stats: cnt should start with 0H Hartley Sweeten2011-10-051-1/+1
| | | | | | | | | | The package count, cnt, should start with an initial value of 0. It is incremented as each package *.mk file is checked. Starting with a value of 1 makes the first ID = 2 and results in the TOTAL being off by 1. Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>