| #
255bb283 |
| 17-May-2022 |
Pali Rohár <pali@kernel.org> |
UPSTREAM: ubifs: Fix lockup/crash when reading files
Commit b1a14f8a1c2e ("UBIFS: Change ubifsload to not read beyond the requested size") added optimization to do not read more bytes than it is rea
UPSTREAM: ubifs: Fix lockup/crash when reading files
Commit b1a14f8a1c2e ("UBIFS: Change ubifsload to not read beyond the requested size") added optimization to do not read more bytes than it is really needed. But this commit introduced incorrect handling of the hole at the end of file. This logic cause U-Boot to crash or lockup when trying to read from the ubifs filesystem.
When read_block() call returns -ENOENT error (not an error, but the hole) then dn-> structure is not filled and contain garbage. So using of dn->size for memcpy() argument cause that U-Boot tries to copy unspecified amount of bytes from possible unmapped memory. Which randomly cause lockup of P2020 CPU.
Fix this issue by copying UBIFS_BLOCK_SIZE bytes from read buffer when dn->size is not available. UBIFS_BLOCK_SIZE is the size of the buffer itself and read_block() fills buffer by zeros when it returns -ENOENT.
This patch fixes ubifsload on P2020.
Fixes: b1a14f8a1c2e ("UBIFS: Change ubifsload to not read beyond the requested size") Change-Id: I361a8cae545d40475bb540b9ae92f4c04cce484d Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de> Signed-off-by: Jon Lin <jon.lin@rock-chips.com> (cherry picked from commit 339f652992919be11e3f1b791515140de646a3ef)
show more ...
|
| #
6dd3ad81 |
| 05-Nov-2018 |
Paul Davey <paul.davey@alliedtelesis.co.nz> |
UPSTREAM: fs: ubifs: Fix UBIFS decompression on 64 bit
Add local size_t variable to crypto_comp_decompress as intermediate storage for destination length to avoid memory corruption and incorrect res
UPSTREAM: fs: ubifs: Fix UBIFS decompression on 64 bit
Add local size_t variable to crypto_comp_decompress as intermediate storage for destination length to avoid memory corruption and incorrect results on 64 bit targets.
This is what linux does for the various lz compression implementations.
Change-Id: I8a2de3ff31824f0574370225240fdcf6ef76967d Signed-off-by: Paul Davey <paul.davey@alliedtelesis.co.nz> Cc: Heiko Schocher <hs@denx.de> Tested-by: Heiko Schocher <hs@denx.de> Signed-off-by: Jon Lin <jon.lin@rock-chips.com> (cherry picked from commit e4aa10ba5770fc391bf8a4b00c131353901704e7)
show more ...
|
| #
458520ad |
| 08-Nov-2017 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
UPSTREAM: ubifs: no NULL check needed before free
kfree() calls free. free() checks if the parameter is NULL.
Change-Id: I77522f68451bac8c2e5db627a65ee179cb6ab0a9 Signed-off-by: Heinrich Schuchardt
UPSTREAM: ubifs: no NULL check needed before free
kfree() calls free. free() checks if the parameter is NULL.
Change-Id: I77522f68451bac8c2e5db627a65ee179cb6ab0a9 Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Jon Lin <jon.lin@rock-chips.com> (cherry picked from commit 4b29975fd0f25256d8e643076a2c4c5f9de00f8f)
show more ...
|
| #
89468843 |
| 27-Apr-2018 |
Patrice Chotard <patrice.chotard@st.com> |
UPSTREAM: ubifs: avoid assert failed in ubifs.c
This patch solves assert failed displayed in the console during a boot. The root cause is that the ubifs_inode is not already allocated when ubifs_pri
UPSTREAM: ubifs: avoid assert failed in ubifs.c
This patch solves assert failed displayed in the console during a boot. The root cause is that the ubifs_inode is not already allocated when ubifs_printdir and ubifs_finddir functions are called.
Trace showing the issue: feed 'boot.scr.uimg', ino 94, new f_pos 0x17b40ece dent->ch.sqnum '7132', creat_sqnum 3886945402880 UBIFS assert failed in ubifs_finddir at 436 INODE ALLOCATION: creat_sqnum '7129' Found U-Boot script /boot.scr.uimg
Change-Id: Ic506a4613d8209f1a01c118c563736915ca3d975 Signed-off-by: Christophe Kerello <christophe.kerello@st.com> Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Signed-off-by: Jon Lin <jon.lin@rock-chips.com> (cherry picked from commit 87deefeccc49756ee33b5c0fb6dbe331dfdff487)
show more ...
|
| #
018f5303 |
| 03-Aug-2017 |
Simon Glass <sjg@chromium.org> |
env: Rename common functions related to setenv()
We are now using an env_ prefix for environment functions. Rename these commonly used functions, for consistency. Also add function comments in commo
env: Rename common functions related to setenv()
We are now using an env_ prefix for environment functions. Rename these commonly used functions, for consistency. Also add function comments in common.h.
Suggested-by: Wolfgang Denk <wd@denx.de> Signed-off-by: Simon Glass <sjg@chromium.org>
show more ...
|
| #
24796d27 |
| 06-Jun-2017 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-ubi
|
| #
34cc30af |
| 30-May-2017 |
Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> |
fs: usbifs: Fix warning in ubifs
This patch fixes the below warning by typecasting it properly fs/ubifs/ubifs.c: In function 'ubifs_load': fs/ubifs/ubifs.c:942:29: warning: cast to pointer from inte
fs: usbifs: Fix warning in ubifs
This patch fixes the below warning by typecasting it properly fs/ubifs/ubifs.c: In function 'ubifs_load': fs/ubifs/ubifs.c:942:29: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] err = ubifs_read(filename, (void *)addr, 0, size, &actread);
Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Heiko Schocher <hs@denx.de>
show more ...
|
| #
1381901e |
| 24-Oct-2016 |
Vagrant Cascadian <vagrant@debian.org> |
Fix spelling of "multiple".
Signed-off-by: Vagrant Cascadian <vagrant@debian.org> Reviewed-by: Simon Glass <sjg@chromium.org>
|
| #
88033d73 |
| 14-Mar-2016 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-dm
|
| #
e35929e4 |
| 29-Feb-2016 |
Simon Glass <sjg@chromium.org> |
dm: blk: Rename get_device_and_partition()
Rename this function to blk_get_device_part_str(). This is a better name because it makes it clear that the function returns a block device and parses a st
dm: blk: Rename get_device_and_partition()
Rename this function to blk_get_device_part_str(). This is a better name because it makes it clear that the function returns a block device and parses a string.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Stephen Warren <swarren@nvidia.com>
show more ...
|
| #
4101f687 |
| 29-Feb-2016 |
Simon Glass <sjg@chromium.org> |
dm: Drop the block_dev_desc_t typedef
Use 'struct' instead of a typdef. Also since 'struct block_dev_desc' is long and causes 80-column violations, rename it to struct blk_desc.
Signed-off-by: Simo
dm: Drop the block_dev_desc_t typedef
Use 'struct' instead of a typdef. Also since 'struct block_dev_desc' is long and causes 80-column violations, rename it to struct blk_desc.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Stephen Warren <swarren@nvidia.com>
show more ...
|
| #
5b8031cc |
| 15-Jan-2016 |
Tom Rini <trini@konsulko.com> |
Add more SPDX-License-Identifier tags
In a number of places we had wordings of the GPL (or LGPL in a few cases) license text that were split in such a way that it wasn't caught previously. Convert
Add more SPDX-License-Identifier tags
In a number of places we had wordings of the GPL (or LGPL in a few cases) license text that were split in such a way that it wasn't caught previously. Convert all of these to the correct SPDX-License-Identifier tag.
Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
| #
e573bdb3 |
| 30-Oct-2015 |
Stefano Babic <sbabic@denx.de> |
Merge branch 'master' of git://git.denx.de/u-boot
|
| #
0195a7bb |
| 22-Oct-2015 |
Heiko Schocher <hs@denx.de> |
ubi,ubifs: sync with linux v4.2
sync with linux v4.2
commit 64291f7db5bd8150a74ad2036f1037e6a0428df2 Author: Linus Torvalds <torvalds@linux-foundation.org> Date: Sun Aug 30 11:34:09 2015 -0700
ubi,ubifs: sync with linux v4.2
sync with linux v4.2
commit 64291f7db5bd8150a74ad2036f1037e6a0428df2 Author: Linus Torvalds <torvalds@linux-foundation.org> Date: Sun Aug 30 11:34:09 2015 -0700
Linux 4.2
This update is needed, as it turned out, that fastmap was in experimental/broken state in kernel v3.15, which was the last base for U-Boot.
Signed-off-by: Heiko Schocher <hs@denx.de> Tested-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
show more ...
|
| #
29cc5bca |
| 17-Sep-2015 |
Hans de Goede <hdegoede@redhat.com> |
ubifs: Add functions for generic fs use
Implement the necessary functions for implementing generic fs support for ubifs.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Heiko Schoch
ubifs: Add functions for generic fs use
Implement the necessary functions for implementing generic fs support for ubifs.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Heiko Schocher <hs@denx.de>
show more ...
|
| #
ad15749b |
| 17-Sep-2015 |
Hans de Goede <hdegoede@redhat.com> |
ubifs: Modify ubifs u-boot wrapper function prototypes for generic fs use
Modify the ubifs u-boot wrapper function prototypes for generic fs use, and give them their own header file.
This is a prep
ubifs: Modify ubifs u-boot wrapper function prototypes for generic fs use
Modify the ubifs u-boot wrapper function prototypes for generic fs use, and give them their own header file.
This is a preparation patch for adding ubifs support to the generic fs code from fs/fs.c.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Heiko Schocher <hs@denx.de>
show more ...
|
| #
13a39725 |
| 14-Oct-2015 |
Albert ARIBAUD <albert.u.boot@aribaud.net> |
Merge remote-tracking branch 'u-boot/master'
|
| #
6e295186 |
| 02-Sep-2015 |
Simon Glass <sjg@chromium.org> |
Move malloc_cache_aligned() to its own header
At present malloc.h is included everywhere since it recently was added to common.h in this commit:
4519668 mtd/nand/ubi: assortment of alignment fix
Move malloc_cache_aligned() to its own header
At present malloc.h is included everywhere since it recently was added to common.h in this commit:
4519668 mtd/nand/ubi: assortment of alignment fixes
This seems wasteful and unnecessary. We have been trying to trim down common.h and put separate functions into separate header files and that change goes in the opposite direction.
Move malloc_cache_aligned() to a new header so that this can be avoided. The header would perhaps be better named as alignmem.h but it needs to be included after common.h and people might be confused by this. With the name memalign.h it fits nicely after malloc() in most cases.
Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
show more ...
|
| #
4519668b |
| 18-Aug-2015 |
Marcel Ziswiler <marcel.ziswiler@toradex.com> |
mtd/nand/ubi: assortment of alignment fixes
Various U-Boot adoptions/extensions to MTD/NAND/UBI did not take buffer alignment into account which led to failures of the following form:
ERROR: v7_dca
mtd/nand/ubi: assortment of alignment fixes
Various U-Boot adoptions/extensions to MTD/NAND/UBI did not take buffer alignment into account which led to failures of the following form:
ERROR: v7_dcache_inval_range - start address is not aligned - 0x1f7f0108 ERROR: v7_dcache_inval_range - stop address is not aligned - 0x1f7f1108
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Simon Glass <sjg@chromium.org> Acked-by: Scott Wood <scottwood@freescale.com> [trini: Add __UBOOT__ hunk to lib/zlib/zutil.c due to malloc.h in common.h] Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
| #
e1cc4d31 |
| 24-Feb-2015 |
Albert ARIBAUD <albert.u.boot@aribaud.net> |
Merge remote-tracking branch 'u-boot/master' into 'u-boot-arm/master'
|
| #
e72d3443 |
| 13-Feb-2015 |
Stefano Babic <sbabic@denx.de> |
Merge branch 'master' of git://git.denx.de/u-boot
|
| #
7f641d53 |
| 04-Feb-2015 |
Tom Rini <trini@ti.com> |
Merge branch 'master' of git://git.denx.de/u-boot-ubi
|
| #
dc288431 |
| 22-Jan-2015 |
Anton Habegger <anton.habegger@gmail.com> |
ubifs: Import atomic_long operations from Linux
This commit is a preperation for a subsequent UBIFS commit which needs atomic_long operations.
Therefor "include/asm-generic/atomic-long.h" is import
ubifs: Import atomic_long operations from Linux
This commit is a preperation for a subsequent UBIFS commit which needs atomic_long operations.
Therefor "include/asm-generic/atomic-long.h" is imported from 1860e37 Linux 3.15
Signed-off-by: Anton Habegger <anton.habegger@gmail.com>
show more ...
|
| #
42817eb8 |
| 22-Sep-2014 |
Stefano Babic <sbabic@denx.de> |
Merge branch 'master' of git://git.denx.de/u-boot-arm
|
| #
3b612970 |
| 31-Aug-2014 |
Masahiro Yamada <yamada.m@jp.panasonic.com> |
kbuild: force to define __UBOOT__ in all the C sources
U-Boot has imported various source files from other projects, mostly Linux.
Something like
#ifdef __UBOOT__ [ modification for U-Boot ]
kbuild: force to define __UBOOT__ in all the C sources
U-Boot has imported various source files from other projects, mostly Linux.
Something like
#ifdef __UBOOT__ [ modification for U-Boot ] #else [ original code ] #endif
is an often used strategy for clarification of adjusted parts, that is, easier re-sync in future.
Instead of defining __UBOOT__ in each source file, passing it from the top Makefile would be easier.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: Marek Vasut <marex@denx.de> Acked-by: Heiko Schocher <hs@denx.de>
show more ...
|