* [PATCH 0/2] Nul string list v2 @ 2014-06-16 16:35 Jack Miller [not found] ` <1402936552-10249-1-git-send-email-jack-jZyo8ZIaZD9AfugRpC6u6w@public.gmane.org> 0 siblings, 1 reply; 7+ messages in thread From: Jack Miller @ 2014-06-16 16:35 UTC (permalink / raw) To: devicetree-compiler-u79uwXL29TY76Z2rM5mHXA - Tweaked patch description to make failing case clearer - Added test I decided to only test the mangled output since realloc was just a more serious and obvious symptom of the same problem. I also verified that the pre-patch dtc does in fact fail the test. Let me know if there's anything else that needs to be done. - Jack -- To unsubscribe from this list: send the line "unsubscribe devicetree-compiler" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 7+ messages in thread
[parent not found: <1402936552-10249-1-git-send-email-jack-jZyo8ZIaZD9AfugRpC6u6w@public.gmane.org>]
* [PATCH 1/2] Properly handle nul delimited string lists [not found] ` <1402936552-10249-1-git-send-email-jack-jZyo8ZIaZD9AfugRpC6u6w@public.gmane.org> @ 2014-06-16 16:35 ` Jack Miller 2014-06-16 16:35 ` [PATCH 2/2] Add embedded nul string list test Jack Miller 2014-06-18 1:25 ` [PATCH 0/2] Nul string list v2 David Gibson 2 siblings, 0 replies; 7+ messages in thread From: Jack Miller @ 2014-06-16 16:35 UTC (permalink / raw) To: devicetree-compiler-u79uwXL29TY76Z2rM5mHXA reserved-names="res1\0res2\0res3"; Where \0 is a true embedded nul in the DTS source, should properly turn into a string list. To achieve this, use the len given by the lexer instead of strlen. Without this patch dtc will mangle the output and possible hang on realloc. --- data.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data.c b/data.c index 4c50b12..8cae237 100644 --- a/data.c +++ b/data.c @@ -74,7 +74,7 @@ struct data data_copy_escape_string(const char *s, int len) struct data d; char *q; - d = data_grow_for(empty_data, strlen(s)+1); + d = data_grow_for(empty_data, len + 1); q = d.val; while (i < len) { -- 2.0.0 -- To unsubscribe from this list: send the line "unsubscribe devicetree-compiler" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 2/2] Add embedded nul string list test [not found] ` <1402936552-10249-1-git-send-email-jack-jZyo8ZIaZD9AfugRpC6u6w@public.gmane.org> 2014-06-16 16:35 ` [PATCH 1/2] Properly handle nul delimited string lists Jack Miller @ 2014-06-16 16:35 ` Jack Miller [not found] ` <1402936552-10249-3-git-send-email-jack-jZyo8ZIaZD9AfugRpC6u6w@public.gmane.org> 2014-06-18 1:25 ` [PATCH 0/2] Nul string list v2 David Gibson 2 siblings, 1 reply; 7+ messages in thread From: Jack Miller @ 2014-06-16 16:35 UTC (permalink / raw) To: devicetree-compiler-u79uwXL29TY76Z2rM5mHXA --- tests/nul_string_list.dtb | Bin 0 -> 127 bytes tests/nul_string_list.dts | Bin 0 -> 66 bytes tests/run_tests.sh | 3 +++ 3 files changed, 3 insertions(+) create mode 100644 tests/nul_string_list.dtb create mode 100644 tests/nul_string_list.dts diff --git a/tests/nul_string_list.dtb b/tests/nul_string_list.dtb new file mode 100644 index 0000000000000000000000000000000000000000..ea2bc3915d8129c849d2cc7b247bc9d1a201256c GIT binary patch literal 127 zcmcb>`|m9S14BI!TL5tZ5NiOjAP@@xF$nMjF-Q&_FhT{GfwVM;U6fj!T2z*52xAz* W7{*|gOhA$oswPD@FEKZ@m;nI8VH4E= literal 0 HcmV?d00001 diff --git a/tests/nul_string_list.dts b/tests/nul_string_list.dts new file mode 100644 index 0000000000000000000000000000000000000000..845a14425fd36db3fac2934d1412dbb2cd8fb3a9 GIT binary patch literal 66 zcmdN-DJj-1Gt{@{;?h^B=He_$Elw>eOHI+uOUz9zR<Ko2f{GY2Kp93bhOv@0SFJS{ E0H@#-od5s; literal 0 HcmV?d00001 diff --git a/tests/run_tests.sh b/tests/run_tests.sh index f205ce6..3b0b500 100755 --- a/tests/run_tests.sh +++ b/tests/run_tests.sh @@ -310,6 +310,9 @@ dtc_tests () { run_dtc_test -I dts -O dtb -o dtc_comments-cmp.test.dtb comments-cmp.dts run_test dtbs_equal_ordered dtc_comments.test.dtb dtc_comments-cmp.test.dtb + run_dtc_test -I dts -O dtb -o dtc_nul_string_list.dtb nul_string_list.dts + run_test dtbs_equal_ordered dtc_nul_string_list.dtb nul_string_list.dtb + # Check aliases support in fdt_path_offset run_dtc_test -I dts -O dtb -o aliases.dtb aliases.dts run_test get_alias aliases.dtb -- 2.0.0 -- To unsubscribe from this list: send the line "unsubscribe devicetree-compiler" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 7+ messages in thread
[parent not found: <1402936552-10249-3-git-send-email-jack-jZyo8ZIaZD9AfugRpC6u6w@public.gmane.org>]
* Re: [PATCH 2/2] Add embedded nul string list test [not found] ` <1402936552-10249-3-git-send-email-jack-jZyo8ZIaZD9AfugRpC6u6w@public.gmane.org> @ 2014-06-18 1:27 ` David Gibson [not found] ` <20140618012729.GE29264-1s0os16eZneny3qCrzbmXA@public.gmane.org> 0 siblings, 1 reply; 7+ messages in thread From: David Gibson @ 2014-06-18 1:27 UTC (permalink / raw) To: Jack Miller; +Cc: devicetree-compiler-u79uwXL29TY76Z2rM5mHXA [-- Attachment #1: Type: text/plain, Size: 2033 bytes --] On Mon, Jun 16, 2014 at 11:35:52AM -0500, Jack Miller wrote: > --- > tests/nul_string_list.dtb | Bin 0 -> 127 bytes > tests/nul_string_list.dts | Bin 0 -> 66 bytes > tests/run_tests.sh | 3 +++ > 3 files changed, 3 insertions(+) > create mode 100644 tests/nul_string_list.dtb > create mode 100644 tests/nul_string_list.dts > > diff --git a/tests/nul_string_list.dtb b/tests/nul_string_list.dtb > new file mode 100644 > index 0000000000000000000000000000000000000000..ea2bc3915d8129c849d2cc7b247bc9d1a201256c > GIT binary patch > literal 127 > zcmcb>`|m9S14BI!TL5tZ5NiOjAP@@xF$nMjF-Q&_FhT{GfwVM;U6fj!T2z*52xAz* > W7{*|gOhA$oswPD@FEKZ@m;nI8VH4E= > > literal 0 > HcmV?d00001 > > diff --git a/tests/nul_string_list.dts b/tests/nul_string_list.dts > new file mode 100644 > index 0000000000000000000000000000000000000000..845a14425fd36db3fac2934d1412dbb2cd8fb3a9 > GIT binary patch > literal 66 > zcmdN-DJj-1Gt{@{;?h^B=He_$Elw>eOHI+uOUz9zR<Ko2f{GY2Kp93bhOv@0SFJS{ > E0H@#-od5s; > > literal 0 > HcmV?d00001 > > diff --git a/tests/run_tests.sh b/tests/run_tests.sh > index f205ce6..3b0b500 100755 > --- a/tests/run_tests.sh > +++ b/tests/run_tests.sh > @@ -310,6 +310,9 @@ dtc_tests () { > run_dtc_test -I dts -O dtb -o dtc_comments-cmp.test.dtb comments-cmp.dts > run_test dtbs_equal_ordered dtc_comments.test.dtb dtc_comments-cmp.test.dtb > > + run_dtc_test -I dts -O dtb -o dtc_nul_string_list.dtb nul_string_list.dts dtb files generated by the tests should be named XXX.test.dtb so that make clean will clean them up again. > + run_test dtbs_equal_ordered dtc_nul_string_list.dtb nul_string_list.dtb > + > # Check aliases support in fdt_path_offset > run_dtc_test -I dts -O dtb -o aliases.dtb aliases.dts > run_test get_alias aliases.dtb -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson [-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
[parent not found: <20140618012729.GE29264-1s0os16eZneny3qCrzbmXA@public.gmane.org>]
* Re: [PATCH 2/2] Add embedded nul string list test [not found] ` <20140618012729.GE29264-1s0os16eZneny3qCrzbmXA@public.gmane.org> @ 2014-06-18 17:35 ` Jack Miller [not found] ` <20140618173519.GA15740-O8SCTCEbm15XsEFxtoW7CMxtgHpCUUYS@public.gmane.org> 0 siblings, 1 reply; 7+ messages in thread From: Jack Miller @ 2014-06-18 17:35 UTC (permalink / raw) To: David Gibson; +Cc: devicetree-compiler-u79uwXL29TY76Z2rM5mHXA On Wed, Jun 18, 2014 at 11:27:29AM +1000, David Gibson wrote: > > @@ -310,6 +310,9 @@ dtc_tests () { > > run_dtc_test -I dts -O dtb -o dtc_comments-cmp.test.dtb comments-cmp.dts > > run_test dtbs_equal_ordered dtc_comments.test.dtb dtc_comments-cmp.test.dtb > > > > + run_dtc_test -I dts -O dtb -o dtc_nul_string_list.dtb nul_string_list.dts > > dtb files generated by the tests should be named XXX.test.dtb so that > make clean will clean them up again. Hmmm, the greater problem here seems to be that I'm including a .dtb that *isn't* disposable and will be cleaned. Should this test check that the generated dtb decompiles into "","","" format instead of comparing to a binary? That seems a little weak as it assumes that the intermediate .dtb is correct, but I don't know your thoughts on including binaries into your test directory. - Jack -- To unsubscribe from this list: send the line "unsubscribe devicetree-compiler" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 7+ messages in thread
[parent not found: <20140618173519.GA15740-O8SCTCEbm15XsEFxtoW7CMxtgHpCUUYS@public.gmane.org>]
* Re: [PATCH 2/2] Add embedded nul string list test [not found] ` <20140618173519.GA15740-O8SCTCEbm15XsEFxtoW7CMxtgHpCUUYS@public.gmane.org> @ 2014-06-19 1:57 ` David Gibson 0 siblings, 0 replies; 7+ messages in thread From: David Gibson @ 2014-06-19 1:57 UTC (permalink / raw) To: Jack Miller; +Cc: devicetree-compiler-u79uwXL29TY76Z2rM5mHXA [-- Attachment #1: Type: text/plain, Size: 1499 bytes --] On Wed, Jun 18, 2014 at 12:35:19PM -0500, Jack Miller wrote: > On Wed, Jun 18, 2014 at 11:27:29AM +1000, David Gibson wrote: > > > @@ -310,6 +310,9 @@ dtc_tests () { > > > run_dtc_test -I dts -O dtb -o dtc_comments-cmp.test.dtb comments-cmp.dts > > > run_test dtbs_equal_ordered dtc_comments.test.dtb dtc_comments-cmp.test.dtb > > > > > > + run_dtc_test -I dts -O dtb -o dtc_nul_string_list.dtb nul_string_list.dts > > > > dtb files generated by the tests should be named XXX.test.dtb so that > > make clean will clean them up again. > > Hmmm, the greater problem here seems to be that I'm including a .dtb that > *isn't* disposable and will be cleaned. Should this test check that the > generated dtb decompiles into "","","" format instead of comparing to a > binary? That seems a little weak as it assumes that the intermediate .dtb is > correct, but I don't know your thoughts on including binaries into your test > directory. So, I thought about that. It would be possible to avoid by making a comparison .dts which includes the NULs using string escapes or bytestrings instead of NULs in the input, then comparing the .dtb outputs from each. However, I don't think there's a real problem with a pre-built dtb, git handles binary files adequately well. -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson [-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/2] Nul string list v2 [not found] ` <1402936552-10249-1-git-send-email-jack-jZyo8ZIaZD9AfugRpC6u6w@public.gmane.org> 2014-06-16 16:35 ` [PATCH 1/2] Properly handle nul delimited string lists Jack Miller 2014-06-16 16:35 ` [PATCH 2/2] Add embedded nul string list test Jack Miller @ 2014-06-18 1:25 ` David Gibson 2 siblings, 0 replies; 7+ messages in thread From: David Gibson @ 2014-06-18 1:25 UTC (permalink / raw) To: Jack Miller; +Cc: devicetree-compiler-u79uwXL29TY76Z2rM5mHXA [-- Attachment #1: Type: text/plain, Size: 791 bytes --] On Mon, Jun 16, 2014 at 11:35:50AM -0500, Jack Miller wrote: > - Tweaked patch description to make failing case clearer > - Added test > > I decided to only test the mangled output since realloc was just a more serious > and obvious symptom of the same problem. I also verified that the pre-patch dtc > does in fact fail the test. > > Let me know if there's anything else that needs to be done. Sure, couple of nits to pick. It's preferred to fold fix and testcase into the same patch - particularly for small fixes like this. Further comment against the individual patches. -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson [-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-06-19 1:57 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-06-16 16:35 [PATCH 0/2] Nul string list v2 Jack Miller [not found] ` <1402936552-10249-1-git-send-email-jack-jZyo8ZIaZD9AfugRpC6u6w@public.gmane.org> 2014-06-16 16:35 ` [PATCH 1/2] Properly handle nul delimited string lists Jack Miller 2014-06-16 16:35 ` [PATCH 2/2] Add embedded nul string list test Jack Miller [not found] ` <1402936552-10249-3-git-send-email-jack-jZyo8ZIaZD9AfugRpC6u6w@public.gmane.org> 2014-06-18 1:27 ` David Gibson [not found] ` <20140618012729.GE29264-1s0os16eZneny3qCrzbmXA@public.gmane.org> 2014-06-18 17:35 ` Jack Miller [not found] ` <20140618173519.GA15740-O8SCTCEbm15XsEFxtoW7CMxtgHpCUUYS@public.gmane.org> 2014-06-19 1:57 ` David Gibson 2014-06-18 1:25 ` [PATCH 0/2] Nul string list v2 David Gibson
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).