Skip to content

squash pkg/spiffs: (opendir, readdir, closedir) Use pointer to private data directly instead of copying#2

Merged
vincent-d merged 1 commit intoOTAkeys:pr/spiffsfrom
jnohlgard:spr/spiffs-dir-nocopy
Jul 18, 2016
Merged

squash pkg/spiffs: (opendir, readdir, closedir) Use pointer to private data directly instead of copying#2
vincent-d merged 1 commit intoOTAkeys:pr/spiffsfrom
jnohlgard:spr/spiffs-dir-nocopy

Conversation

@jnohlgard
Copy link
Copy Markdown

No description provided.


SPIFFS_opendir(&fs_desc->fs, dirname, &d);
memcpy(dirp->private_data.buffer, &d, sizeof(d));
spiffs_DIR *res = SPIFFS_opendir(&fs_desc->fs, dirname, d);
Copy link
Copy Markdown
Author

@jnohlgard jnohlgard Jul 16, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also added a check on the return value of opendir. It fails if the fs is not mounted or if SPIFFS_CHECK_CFG fails.

@vincent-d
Copy link
Copy Markdown
Member

@gebart , are we sure the memory alignment is OK. That was why I used a memcpy.

@jnohlgard
Copy link
Copy Markdown
Author

The alignment of private_data.buffer, you mean? The alignment of that should be the same as for void * since it's part of a union with that type, but maybe we should change the buffer to be of a different data type?

@vincent-d
Copy link
Copy Markdown
Member

yep I meant private_data.buffer, but I've missed the union thing, so that should be OK indeed.

@vincent-d vincent-d merged commit 9662d8b into OTAkeys:pr/spiffs Jul 18, 2016
vincent-d pushed a commit that referenced this pull request Jul 18, 2016
vincent-d pushed a commit that referenced this pull request Jul 19, 2016
vincent-d pushed a commit that referenced this pull request Jul 19, 2016
@jnohlgard jnohlgard deleted the spr/spiffs-dir-nocopy branch July 26, 2016 16:42
vincent-d pushed a commit that referenced this pull request Jul 27, 2016
vincent-d pushed a commit that referenced this pull request Jul 28, 2016
vincent-d pushed a commit that referenced this pull request Aug 10, 2016
vincent-d pushed a commit that referenced this pull request Sep 7, 2016
vincent-d pushed a commit that referenced this pull request Dec 6, 2016
vincent-d pushed a commit that referenced this pull request Dec 26, 2016
vincent-d pushed a commit that referenced this pull request Jan 11, 2017
vincent-d pushed a commit that referenced this pull request Jan 20, 2017
vincent-d pushed a commit that referenced this pull request Feb 7, 2017
vincent-d pushed a commit that referenced this pull request May 29, 2019
…onal

sys: make uart_stdio RX optional (attempt #2)
toonst pushed a commit that referenced this pull request Jul 19, 2019
The evtimer_msg test is expanded to also delete entries.

Furthermore the messages that are printed should now show
numbers that are very close (if not equal). Something like
this:
At    740 ms received msg 0: "#2 supposed to be 740"
At   1081 ms received msg 1: "#0 supposed to be 1081"
At   1581 ms received msg 2: "#1 supposed to be 1581"
At   4035 ms received msg 3: "#3 supposed to be 4035"

The function evtimer_print is also called to show the
intermediate status of evtimer entries.
vincent-d pushed a commit that referenced this pull request Sep 6, 2019
The test randomly fails on `native` due to timers being not accurate but
it cannot be otherwise. So better disable it than raising fake errors.

    main(): This is RIOT! (Version: buildtest)
    Testing generic evtimer
    This should list 2 items
    ev #1 offset=1000
    ev #2 offset=500
    This should list 4 items
    ev #1 offset=659
    ev #2 offset=341
    ev #3 offset=500
    ev #4 offset=2454
    Are the reception times of all 4 msgs close to the supposed values?
    At    662 ms received msg 0: "#2 supposed to be 659"
    At   1009 ms received msg 1: "#0 supposed to be 1000"
    At   1511 ms received msg 2: "#1 supposed to be 1500"

    Traceback (most recent call last):
      File "/tmp/dwq.0.3125418833043728/ef3af88c4b3615788b164464a437df5c/tests/evtimer_msg/tests/01-run.py", line 33, in <module>
        sys.exit(run(testfunc))
      File "/tmp/dwq.0.3125418833043728/ef3af88c4b3615788b164464a437df5c/dist/pythonlibs/testrunner/__init__.py", line 29, in run
        testfunc(child)
      File "/tmp/dwq.0.3125418833043728/ef3af88c4b3615788b164464a437df5c/tests/evtimer_msg/tests/01-run.py", line 26, in testfunc
        assert(actual in range(expected - ACCEPTED_ERROR, expected + ACCEPTED_ERROR))
    AssertionError
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants