| #
635356e5 |
| 30-Sep-2017 |
Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> |
UPSTREAM: fs/fat: Check malloc return values and fix memory leaks
Check malloc() return values and properly unwind on errors so memory allocated for fat_itr structures get freed properly.
Also fixe
UPSTREAM: fs/fat: Check malloc return values and fix memory leaks
Check malloc() return values and properly unwind on errors so memory allocated for fat_itr structures get freed properly.
Also fixes a leak of fsdata.fatbuf in fat_size().
Fixes: 2460098cffacd1 ("fs/fat: Reduce stack usage") Change-Id: If2abd822a136b40375f6b0052c88c0d9deb3a632 Reported-by: Coverity (CID: 167225, 167233, 167234) Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> Reviewed-by: Tom Rini <trini@konsulko.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit af609e3764ea3ed7c0ccad8e57f9d9671c81c3e8)
show more ...
|
| #
86597fe0 |
| 30-Sep-2017 |
Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> |
UPSTREAM: fs/fat: Fix 'CACHE: Misaligned operation at range' warnings
The 'block' field of fat_itr needs to be properly aligned for DMA and while it does have '__aligned(ARCH_DMA_MINALIGN)', the fat
UPSTREAM: fs/fat: Fix 'CACHE: Misaligned operation at range' warnings
The 'block' field of fat_itr needs to be properly aligned for DMA and while it does have '__aligned(ARCH_DMA_MINALIGN)', the fat_itr structure itself needs to be properly aligned as well.
While at it use malloc_cache_aligned() for the other aligned allocations in the file as well.
Fixes: 2460098cffacd1 ("fs/fat: Reduce stack usage") Change-Id: I0b7bfe73d00435d8ec3dcd7f52a10deca07a704e Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> Reviewed-by: Tom Rini <trini@konsulko.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 09fa964bba80c45432660f0e64362181900a5aef)
show more ...
|
| #
29de6c91 |
| 22-Sep-2017 |
Tom Rini <trini@konsulko.com> |
UPSTREAM: fs/fat: Reduce stack usage
We have limited stack in SPL builds. Drop itrblock and move to malloc/free of itr to move this off of the stack. As part of this fix a double-free issue in fat
UPSTREAM: fs/fat: Reduce stack usage
We have limited stack in SPL builds. Drop itrblock and move to malloc/free of itr to move this off of the stack. As part of this fix a double-free issue in fat_size().
Change-Id: I2d8baa3a0b6ffa0f9591366a095d5e315c41fde8 Signed-off-by: Tom Rini <trini@konsulko.com> --- Rework to use malloc/free as moving this to a global overflows some SH targets. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 2460098cffacd18729262e3ed36656e6943783ed)
show more ...
|
| #
85681a03 |
| 12-Sep-2017 |
Rob Clark <robdclark@gmail.com> |
UPSTREAM: fs/fat: fix fatbuf leak
A new fatbuf was allocated by get_fs_info() (called by fat_itr_root()), but not freed, resulting in eventually running out of memory. Spotted by running 'ls -r' in
UPSTREAM: fs/fat: fix fatbuf leak
A new fatbuf was allocated by get_fs_info() (called by fat_itr_root()), but not freed, resulting in eventually running out of memory. Spotted by running 'ls -r' in a large FAT filesystem from Shell.efi.
fatbuf is mainly used to cache FAT entry lookups (get_fatent()).. possibly once fat_write.c it can move into the iterator to simplify this.
Change-Id: I194a2de30a177e9b377dc50c61a2af6106dd8820 Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Łukasz Majewski <lukma@denx.de> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 725ffdb5cbcc4b8a9726a68cc6ae0713266ba5a9)
show more ...
|
| #
1d8c5dbb |
| 09-Sep-2017 |
Rob Clark <robdclark@gmail.com> |
UPSTREAM: fs/fat: Clean up open-coded sector <-> cluster conversions
Use the clust_to_sect() helper that was introduced earlier, and add an inverse sect_to_clust(), plus update the various spots tha
UPSTREAM: fs/fat: Clean up open-coded sector <-> cluster conversions
Use the clust_to_sect() helper that was introduced earlier, and add an inverse sect_to_clust(), plus update the various spots that open-coded this conversion previously.
Change-Id: Ifb6a59cefda1491639dcd6e8ea32fd2490af13b5 Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 265edc03d5a19550d92cbd6e10631d5a15bdd1d5)
show more ...
|
| #
271eb208 |
| 09-Sep-2017 |
Rob Clark <robdclark@gmail.com> |
UPSTREAM: fs/fat: fix case for FAT shortnames
Noticed when comparing our output to linux. There are some lcase bits which control whether filename and/or extension should be downcase'd.
Change-Id:
UPSTREAM: fs/fat: fix case for FAT shortnames
Noticed when comparing our output to linux. There are some lcase bits which control whether filename and/or extension should be downcase'd.
Change-Id: I55dc1f9ef025dc3174158d06ed78d1f8b54e1335 Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Łukasz Majewski <lukma@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 21a24c3bf35bac83d66ce4a48eb0c7dd8a7227cb)
show more ...
|
| #
d5fb8aea |
| 09-Sep-2017 |
Rob Clark <robdclark@gmail.com> |
UPSTREAM: fat/fs: move ls to generic implementation
Add a generic implementation of 'ls' using opendir/readdir/closedir, and replace fat's custom implementation. Other filesystems should move to th
UPSTREAM: fat/fs: move ls to generic implementation
Add a generic implementation of 'ls' using opendir/readdir/closedir, and replace fat's custom implementation. Other filesystems should move to the generic implementation after they add opendir/readdir/closedir support.
Change-Id: I287d3cd6e97c0c1901518c5ae1bb0653c7299f9b Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Łukasz Majewski <lukma@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 89191d626793490b579e1d36e7d7a4464a20f9f6)
show more ...
|
| #
60352d22 |
| 09-Sep-2017 |
Rob Clark <robdclark@gmail.com> |
UPSTREAM: fs/fat: implement opendir/readdir/closedir
Implement the readdir interface using the directory iterators.
Change-Id: I88123b039fa0644033847670027aca9d99bd4d2e Signed-off-by: Rob Clark <ro
UPSTREAM: fs/fat: implement opendir/readdir/closedir
Implement the readdir interface using the directory iterators.
Change-Id: I88123b039fa0644033847670027aca9d99bd4d2e Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Łukasz Majewski <lukma@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 1f40366b319eac7eb02f8894fff5c94fbdb47d30)
show more ...
|
| #
759bf728 |
| 09-Sep-2017 |
Rob Clark <robdclark@gmail.com> |
UPSTREAM: fat/fs: convert to directory iterators
And drop a whole lot of ugly code!
Change-Id: Ie4e132aae98f00738ba7cebae70209bf38cd5802 Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by:
UPSTREAM: fat/fs: convert to directory iterators
And drop a whole lot of ugly code!
Change-Id: Ie4e132aae98f00738ba7cebae70209bf38cd5802 Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Łukasz Majewski <lukma@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 8eafae209c35932d9a6560809c55ee4641534236)
show more ...
|
| #
fed831fc |
| 09-Sep-2017 |
Rob Clark <robdclark@gmail.com> |
UPSTREAM: fs/fat: introduce new director iterators
Untangle directory traversal into a simple iterator, to replace the existing multi-purpose do_fat_read_at() + get_dentfromdir().
Change-Id: Iacf40
UPSTREAM: fs/fat: introduce new director iterators
Untangle directory traversal into a simple iterator, to replace the existing multi-purpose do_fat_read_at() + get_dentfromdir().
Change-Id: Iacf404e2ac7796adfa489d6e098c4d310635975a Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Łukasz Majewski <lukma@denx.de> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit c6e3baa565bc3b5828cf0d67ca6429dbe5f8687c)
show more ...
|
| #
f3068e75 |
| 09-Sep-2017 |
Rob Clark <robdclark@gmail.com> |
UPSTREAM: fs/fat: split out helper to init fsdata
Want to re-use this in fat dirent iterator in next patch.
Change-Id: I61d7586e50d13106c516235d46c47410b22496bb Signed-off-by: Rob Clark <robdclark@
UPSTREAM: fs/fat: split out helper to init fsdata
Want to re-use this in fat dirent iterator in next patch.
Change-Id: I61d7586e50d13106c516235d46c47410b22496bb Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Łukasz Majewski <lukma@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 45449980f80169214633f2649a27c791d0104e9d)
show more ...
|
| #
42a9f147 |
| 15-Aug-2017 |
Tom Rini <trini@konsulko.com> |
fs/fat: Correct blk_dread() return value check
The function blk_dread will return -ENOSYS on failure or on success the number of blocks read, which must be the number asked to read (otherwise it fai
fs/fat: Correct blk_dread() return value check
The function blk_dread will return -ENOSYS on failure or on success the number of blocks read, which must be the number asked to read (otherwise it failed somewhere). Correct this check.
Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
| #
8d3a2568 |
| 12-Jul-2017 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-dm
|
| #
10e40d54 |
| 15-Jun-2017 |
Simon Glass <sjg@chromium.org> |
Kconfig: Add CONFIG_SATA to enable SATA
At present CONFIG_CMD_SATA enables the 'sata' command which also brings in SATA support. Some boards may wish to enable SATA without the command. Add a separa
Kconfig: Add CONFIG_SATA to enable SATA
At present CONFIG_CMD_SATA enables the 'sata' command which also brings in SATA support. Some boards may wish to enable SATA without the command. Add a separate CONFIG to permit this.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| #
fc843a02 |
| 17-May-2017 |
Simon Glass <sjg@chromium.org> |
Kconfig: Add a CONFIG_IDE option
At present IDE support is controlled by CONFIG_CMD_IDE. Add a separate CONFIG_IDE option so that IDE support can be enabled without requiring the 'ide' command.
Upd
Kconfig: Add a CONFIG_IDE option
At present IDE support is controlled by CONFIG_CMD_IDE. Add a separate CONFIG_IDE option so that IDE support can be enabled without requiring the 'ide' command.
Update existing users and move the ide driver into drivers/block since it should not be in common/.
Signed-off-by: Simon Glass <sjg@chromium.org>
show more ...
|
| #
b352caea |
| 26-Jan-2017 |
Stefan Brüns <stefan.bruens@rwth-aachen.de> |
fs/fat: Fix unaligned __u16 reads for FAT12 access
Doing unaligned reads is not supported on all architectures, use byte sized reads of the little endian buffer. Rename off16 to off8, as it reflects
fs/fat: Fix unaligned __u16 reads for FAT12 access
Doing unaligned reads is not supported on all architectures, use byte sized reads of the little endian buffer. Rename off16 to off8, as it reflects the buffer offset in byte granularity (offset is in entry, i.e. 12 bit, granularity). Fix a regression introduced in 8d48c92b45aea91e2a2be90f2ed93677e85526f1
Reported-by: Oleksandr Tymoshenko <gonzo@bluezbox.com> Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de> Tested-by: Oleksandr Tymoshenko <gonzo@bluezbox.com>
show more ...
|
| #
b331cd62 |
| 27-Jan-2017 |
Patrick Delaunay <patrick.delaunay@st.com> |
cmd, disk: convert CONFIG_PARTITION_UUIDS, CMD_PART and CMD_GPT
We convert CONFIG_PARTITION_UUIDS to Kconfig first. But in order to cleanly update all of the config files we must also update CMD_PA
cmd, disk: convert CONFIG_PARTITION_UUIDS, CMD_PART and CMD_GPT
We convert CONFIG_PARTITION_UUIDS to Kconfig first. But in order to cleanly update all of the config files we must also update CMD_PART and CMD_GPT to also be in Kconfig in order to avoid complex logic elsewhere to update all of the config files.
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Signed-off-by: Patrick Delaunay <patrick.delaunay73@gmail.com> Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
| #
8d48c92b |
| 17-Dec-2016 |
Stefan Brüns <stefan.bruens@rwth-aachen.de> |
fs/fat: simplify get_fatent for FAT12
Instead of shuffling bits from two adjacent 16 bit words, use one 16 bit word with the appropriate byte offset in the buffer.
Signed-off-by: Stefan Brüns <stef
fs/fat: simplify get_fatent for FAT12
Instead of shuffling bits from two adjacent 16 bit words, use one 16 bit word with the appropriate byte offset in the buffer.
Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
show more ...
|
| #
b8948d2a |
| 16-Dec-2016 |
Stefan Brüns <stefan.bruens@rwth-aachen.de> |
fs/fat: merge readwrite get_fatent_value() with readonly get_fatent()
get_fatent_value(...) flushes changed FAT entries to disk when fetching the next FAT blocks, in every other aspect it is identic
fs/fat: merge readwrite get_fatent_value() with readonly get_fatent()
get_fatent_value(...) flushes changed FAT entries to disk when fetching the next FAT blocks, in every other aspect it is identical to get_fatent(...).
Provide a stub implementation for flush_dirty_fat_buffer if CONFIG_FAT_WRITE is not set. Calling flush_dirty_fat_buffer during read only operation is fine as it checks if any buffers needs flushing.
Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de> Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
show more ...
|
| #
6c1a8080 |
| 16-Dec-2016 |
Stefan Brüns <stefan.bruens@rwth-aachen.de> |
fs/fat: Avoid corruption of sectors following the FAT
The FAT is read/flushed in segments of 6 (FATBUFBLOCKS) disk sectors. The last segment may be less than 6 sectors, cap the length.
Signed-off-b
fs/fat: Avoid corruption of sectors following the FAT
The FAT is read/flushed in segments of 6 (FATBUFBLOCKS) disk sectors. The last segment may be less than 6 sectors, cap the length.
Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de> Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
show more ...
|
| #
3c0ed9c3 |
| 11-Sep-2016 |
Stefan Brüns <stefan.bruens@rwth-aachen.de> |
fs/fat: Do not write unmodified fat entries to disk
The code caches 6 sectors of the FAT. On FAT traversal, the old contents needs to be flushed to disk, but only if any FAT entries had been modifie
fs/fat: Do not write unmodified fat entries to disk
The code caches 6 sectors of the FAT. On FAT traversal, the old contents needs to be flushed to disk, but only if any FAT entries had been modified. Explicitly flag the buffer on modification.
Currently, creating a new file traverses the whole FAT up to the first free cluster and rewrites the on-disk blocks.
Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de> Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>
show more ...
|
| #
08ca213a |
| 24-May-2016 |
Stefano Babic <sbabic@denx.de> |
Merge branch 'master' of git://git.denx.de/u-boot
|
| #
4b6e1fda |
| 17-May-2016 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-dm
|
| #
c649e3c9 |
| 01-May-2016 |
Simon Glass <sjg@chromium.org> |
dm: scsi: Rename CONFIG_CMD_SCSI to CONFIG_SCSI
This option currently enables both the command and the SCSI functionality. Rename the existing option to CONFIG_SCSI since most of the code relates to
dm: scsi: Rename CONFIG_CMD_SCSI to CONFIG_SCSI
This option currently enables both the command and the SCSI functionality. Rename the existing option to CONFIG_SCSI since most of the code relates to the feature.
Signed-off-by: Simon Glass <sjg@chromium.org>
show more ...
|
| #
88033d73 |
| 14-Mar-2016 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-dm
|